package main

import (
	"fmt"
)

func main() {
	//append函数返回值必须有变量接收，不然编译器会报错.
	//具体原因请参考：http://blog.csdn.net/qq245671051/article/details/50722823
	slice := append([]byte("Hello "), "World"...)
	fmt.Println("example1:", string(slice))

	//第二个参数也可以直接写另一个切片，将它里面所有元素拷贝追加到第一个切片后面。
	//要注意的是，这种用法函数的参数只能接收两个slice，并且末尾要加三个点
	slice2 := append([]int{1, 2, 3}, []int{4, 5, 6}...)
	fmt.Println("example2:", slice2) //[1 2 3 4 5 6]

	//第一个参数为切片，后面是该切片存储元素类型的可变参数
	slice3 := append([]int{1, 2, 3}, 4, 5, 6)
	fmt.Println("example3:", slice3) //[1 2 3 4 5 6]

}
